<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.4"/>
<title>cbp2make: CDependencyRecord Class Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">cbp2make
   </div>
   <div id="projectbrief">Makefile generation tool for Code::Blocks IDE</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.4 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="../../index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="../../pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="../../namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="../../annotated.html"><span>Classes</span></a></li>
      <li><a href="../../files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="../../search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="../../annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="../../hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="../../functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="../../d0/dc3/classCDependencyRecord-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">CDependencyRecord Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Dependency record for a single build unit.  
 <a href="../../dd/d0f/classCDependencyRecord.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="../../d8/d7f/depsearch_8h_source.html">depsearch.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2d3b62dc0a1a7625f8ac3ae2a07422e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d7/da9/classCString.html">CString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a2d3b62dc0a1a7625f8ac3ae2a07422e8">GetName</a> (void) const </td></tr>
<tr class="memdesc:a2d3b62dc0a1a7625f8ac3ae2a07422e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the file name of the build unit.  <a href="#a2d3b62dc0a1a7625f8ac3ae2a07422e8">More...</a><br/></td></tr>
<tr class="separator:a2d3b62dc0a1a7625f8ac3ae2a07422e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2b4b51ad9a0e119076162c70106bf8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#ac2b4b51ad9a0e119076162c70106bf8b">SetName</a> (const <a class="el" href="../../d7/da9/classCString.html">CString</a> &amp;Name)</td></tr>
<tr class="memdesc:ac2b4b51ad9a0e119076162c70106bf8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the file name of the build unit.  <a href="#ac2b4b51ad9a0e119076162c70106bf8b">More...</a><br/></td></tr>
<tr class="separator:ac2b4b51ad9a0e119076162c70106bf8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a256d718b856decdeed2ef53593601a3e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d2/d7f/stringhash_8h.html#a488906826f8aaf7e850c35889d560089">hash_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a256d718b856decdeed2ef53593601a3e">Hash</a> (void) const </td></tr>
<tr class="memdesc:a256d718b856decdeed2ef53593601a3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns string hash for the file name.  <a href="#a256d718b856decdeed2ef53593601a3e">More...</a><br/></td></tr>
<tr class="separator:a256d718b856decdeed2ef53593601a3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4db9b6cc951a300ad044b22c7b52b1fa"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a4db9b6cc951a300ad044b22c7b52b1fa">DependenciesCount</a> (void) const </td></tr>
<tr class="memdesc:a4db9b6cc951a300ad044b22c7b52b1fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of unit denpendencies.  <a href="#a4db9b6cc951a300ad044b22c7b52b1fa">More...</a><br/></td></tr>
<tr class="separator:a4db9b6cc951a300ad044b22c7b52b1fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aafa03b2b0ca9fe418218ba089bdbb915"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#aafa03b2b0ca9fe418218ba089bdbb915">Dependency</a> (const size_t Index) const </td></tr>
<tr class="memdesc:aafa03b2b0ca9fe418218ba089bdbb915"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns dependency record with number <em>Index</em>.  <a href="#aafa03b2b0ca9fe418218ba089bdbb915">More...</a><br/></td></tr>
<tr class="separator:aafa03b2b0ca9fe418218ba089bdbb915"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad94b22fce77c64cc6947c8dd996ae13f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#ad94b22fce77c64cc6947c8dd996ae13f">AddDependency</a> (const <a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> *Record)</td></tr>
<tr class="memdesc:ad94b22fce77c64cc6947c8dd996ae13f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds new dependency for this build unit.  <a href="#ad94b22fce77c64cc6947c8dd996ae13f">More...</a><br/></td></tr>
<tr class="separator:ad94b22fce77c64cc6947c8dd996ae13f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a657144d47c4f627460f4073048d5eaf0"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a657144d47c4f627460f4073048d5eaf0">CrossReferencesCount</a> (void) const </td></tr>
<tr class="memdesc:a657144d47c4f627460f4073048d5eaf0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of cross references to this unit.  <a href="#a657144d47c4f627460f4073048d5eaf0">More...</a><br/></td></tr>
<tr class="separator:a657144d47c4f627460f4073048d5eaf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5d73b29a04dda4aa5731ee825d9ebdd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#ae5d73b29a04dda4aa5731ee825d9ebdd">CrossReference</a> (const size_t Index) const </td></tr>
<tr class="memdesc:ae5d73b29a04dda4aa5731ee825d9ebdd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns cross reference with number <em>Index</em>.  <a href="#ae5d73b29a04dda4aa5731ee825d9ebdd">More...</a><br/></td></tr>
<tr class="separator:ae5d73b29a04dda4aa5731ee825d9ebdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55d06b597f47774630d2e99638eeab30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a55d06b597f47774630d2e99638eeab30">AddCrossReference</a> (const <a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> *Record)</td></tr>
<tr class="memdesc:a55d06b597f47774630d2e99638eeab30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds new cross reference for this build unit.  <a href="#a55d06b597f47774630d2e99638eeab30">More...</a><br/></td></tr>
<tr class="separator:a55d06b597f47774630d2e99638eeab30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af986b04041c71bd0b81d31c37cd606fb"><td class="memItemLeft" align="right" valign="top">bool &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#af986b04041c71bd0b81d31c37cd606fb">DependenciesComplete</a> (void)</td></tr>
<tr class="memdesc:af986b04041c71bd0b81d31c37cd606fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates that the list of dependencies is fully gathered.  <a href="#af986b04041c71bd0b81d31c37cd606fb">More...</a><br/></td></tr>
<tr class="separator:af986b04041c71bd0b81d31c37cd606fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2196e55e8edbb4adceef4732a785ca8"><td class="memItemLeft" align="right" valign="top">bool &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#af2196e55e8edbb4adceef4732a785ca8">CrossReferencesComplete</a> (void)</td></tr>
<tr class="memdesc:af2196e55e8edbb4adceef4732a785ca8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates that the list of cross-references is fully gathered.  <a href="#af2196e55e8edbb4adceef4732a785ca8">More...</a><br/></td></tr>
<tr class="separator:af2196e55e8edbb4adceef4732a785ca8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e1e363a381f344201b3f952e2e838fc"><td class="memItemLeft" align="right" valign="top">int &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a9e1e363a381f344201b3f952e2e838fc">Marker</a> (void)</td></tr>
<tr class="memdesc:a9e1e363a381f344201b3f952e2e838fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates that this unit was already walked through by a dependency unwinding process to avoid infinite loops.  <a href="#a9e1e363a381f344201b3f952e2e838fc">More...</a><br/></td></tr>
<tr class="separator:a9e1e363a381f344201b3f952e2e838fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8150a2fea903df7ddfbf08bb4e5a08f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#ac8150a2fea903df7ddfbf08bb4e5a08f">Clear</a> (void)</td></tr>
<tr class="memdesc:ac8150a2fea903df7ddfbf08bb4e5a08f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets a dependency record to the initial state.  <a href="#ac8150a2fea903df7ddfbf08bb4e5a08f">More...</a><br/></td></tr>
<tr class="separator:ac8150a2fea903df7ddfbf08bb4e5a08f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b79c94758324474032dfb940b61bc20"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a7b79c94758324474032dfb940b61bc20">Show</a> (void)</td></tr>
<tr class="memdesc:a7b79c94758324474032dfb940b61bc20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prints the build unit dependecy record contents to the standard output.  <a href="#a7b79c94758324474032dfb940b61bc20">More...</a><br/></td></tr>
<tr class="separator:a7b79c94758324474032dfb940b61bc20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afef100de03173b459446a48bfeb87c03"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#afef100de03173b459446a48bfeb87c03">CDependencyRecord</a> (void)</td></tr>
<tr class="memdesc:afef100de03173b459446a48bfeb87c03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates dependency record.  <a href="#afef100de03173b459446a48bfeb87c03">More...</a><br/></td></tr>
<tr class="separator:afef100de03173b459446a48bfeb87c03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaec37dc53c3bb3e299fd1334fe213a53"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#aaec37dc53c3bb3e299fd1334fe213a53">~CDependencyRecord</a> (void)</td></tr>
<tr class="memdesc:aaec37dc53c3bb3e299fd1334fe213a53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys dependency record.  <a href="#aaec37dc53c3bb3e299fd1334fe213a53">More...</a><br/></td></tr>
<tr class="separator:aaec37dc53c3bb3e299fd1334fe213a53"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a1eb617707168568e4d2c503150354f09"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d7/da9/classCString.html">CString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a1eb617707168568e4d2c503150354f09">m_Name</a></td></tr>
<tr class="memdesc:a1eb617707168568e4d2c503150354f09"><td class="mdescLeft">&#160;</td><td class="mdescRight">File name of the build unit.  <a href="#a1eb617707168568e4d2c503150354f09">More...</a><br/></td></tr>
<tr class="separator:a1eb617707168568e4d2c503150354f09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4431e94dbd98487fcd0e9852b7cffa57"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d2/d7f/stringhash_8h.html#a488906826f8aaf7e850c35889d560089">hash_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a4431e94dbd98487fcd0e9852b7cffa57">m_Hash</a></td></tr>
<tr class="memdesc:a4431e94dbd98487fcd0e9852b7cffa57"><td class="mdescLeft">&#160;</td><td class="mdescRight">String hash of the unit name <a class="el" href="../../dd/d0f/classCDependencyRecord.html#a1eb617707168568e4d2c503150354f09" title="File name of the build unit. ">CDependencyRecord::m_Name</a>.  <a href="#a4431e94dbd98487fcd0e9852b7cffa57">More...</a><br/></td></tr>
<tr class="separator:a4431e94dbd98487fcd0e9852b7cffa57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169a19e632aa59249d667ef45e2b2560"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a169a19e632aa59249d667ef45e2b2560">m_Dependencies</a></td></tr>
<tr class="memdesc:a169a19e632aa59249d667ef45e2b2560"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of units that this unit depends on.  <a href="#a169a19e632aa59249d667ef45e2b2560">More...</a><br/></td></tr>
<tr class="separator:a169a19e632aa59249d667ef45e2b2560"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9ce653ee88189e3aaf964a8dc65b606"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#ab9ce653ee88189e3aaf964a8dc65b606">m_CrossReferences</a></td></tr>
<tr class="memdesc:ab9ce653ee88189e3aaf964a8dc65b606"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of units that depend on this unit.  <a href="#ab9ce653ee88189e3aaf964a8dc65b606">More...</a><br/></td></tr>
<tr class="separator:ab9ce653ee88189e3aaf964a8dc65b606"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5ddb7b517658fd95a80c04d94f555dd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#af5ddb7b517658fd95a80c04d94f555dd">m_DependenciesComplete</a></td></tr>
<tr class="memdesc:af5ddb7b517658fd95a80c04d94f555dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates that the list of dependencies is fully gathered.  <a href="#af5ddb7b517658fd95a80c04d94f555dd">More...</a><br/></td></tr>
<tr class="separator:af5ddb7b517658fd95a80c04d94f555dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a831a0a5935519f39e1c100fd8a65224f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a831a0a5935519f39e1c100fd8a65224f">m_CrossReferencesComplete</a></td></tr>
<tr class="memdesc:a831a0a5935519f39e1c100fd8a65224f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates that the list of cross-references is fully gathered.  <a href="#a831a0a5935519f39e1c100fd8a65224f">More...</a><br/></td></tr>
<tr class="separator:a831a0a5935519f39e1c100fd8a65224f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0327e854ac8b0bc48eefe3155a84475e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d0f/classCDependencyRecord.html#a0327e854ac8b0bc48eefe3155a84475e">m_Marker</a></td></tr>
<tr class="memdesc:a0327e854ac8b0bc48eefe3155a84475e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates that this unit was already walked through by a dependency unwinding process to avoid infinite loops.  <a href="#a0327e854ac8b0bc48eefe3155a84475e">More...</a><br/></td></tr>
<tr class="separator:a0327e854ac8b0bc48eefe3155a84475e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Dependency record for a single build unit. </p>
<p>Contains a list of units (pointers to other <a class="el" href="../../dd/d0f/classCDependencyRecord.html" title="Dependency record for a single build unit. ">CDependencyRecord</a> objects) that this unit depends on and a list of cross-references to this unit. This class is used by <a class="el" href="../../dc/d5e/classCDependencyInfo.html" title="Dependency information for build units in a project. ">CDependencyInfo</a> to store information about every single build unit. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="afef100de03173b459446a48bfeb87c03"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::CDependencyRecord </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Creates dependency record. </p>

</div>
</div>
<a class="anchor" id="aaec37dc53c3bb3e299fd1334fe213a53"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::~CDependencyRecord </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destroys dependency record. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a55d06b597f47774630d2e99638eeab30"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::AddCrossReference </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> *&#160;</td>
          <td class="paramname"><em>Record</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds new cross reference for this build unit. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Record</td><td>dependency record of another build unit.</td></tr>
  </table>
  </dd>
</dl>
<p>Adding a cross reference means telling that another build unit depends on this build unit. </p>

</div>
</div>
<a class="anchor" id="ad94b22fce77c64cc6947c8dd996ae13f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::AddDependency </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="../../dd/d0f/classCDependencyRecord.html">CDependencyRecord</a> *&#160;</td>
          <td class="paramname"><em>Record</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds new dependency for this build unit. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Record</td><td>dependency record of another build unit.</td></tr>
  </table>
  </dd>
</dl>
<p>Adding a dependency means telling that this build unit depends on another build unit. </p>

</div>
</div>
<a class="anchor" id="ac8150a2fea903df7ddfbf08bb4e5a08f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::Clear </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Resets a dependency record to the initial state. </p>

</div>
</div>
<a class="anchor" id="ae5d73b29a04dda4aa5731ee825d9ebdd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::CrossReference </td>
          <td>(</td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>Index</em>)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns cross reference with number <em>Index</em>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Index</td><td>number of a cross reference.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>cross reference. </dd></dl>

</div>
</div>
<a class="anchor" id="af2196e55e8edbb4adceef4732a785ca8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::CrossReferencesComplete </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates that the list of cross-references is fully gathered. </p>
<dl class="section return"><dt>Returns</dt><dd>reference to <a class="el" href="../../dd/d0f/classCDependencyRecord.html#a831a0a5935519f39e1c100fd8a65224f" title="Indicates that the list of cross-references is fully gathered. ">CDependencyRecord::m_CrossReferencesComplete</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a657144d47c4f627460f4073048d5eaf0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::CrossReferencesCount </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the number of cross references to this unit. </p>
<dl class="section return"><dt>Returns</dt><dd>cross references count. </dd></dl>

</div>
</div>
<a class="anchor" id="af986b04041c71bd0b81d31c37cd606fb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::DependenciesComplete </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates that the list of dependencies is fully gathered. </p>
<dl class="section return"><dt>Returns</dt><dd>reference to <a class="el" href="../../dd/d0f/classCDependencyRecord.html#af5ddb7b517658fd95a80c04d94f555dd" title="Indicates that the list of dependencies is fully gathered. ">CDependencyRecord::m_DependenciesComplete</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a4db9b6cc951a300ad044b22c7b52b1fa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::DependenciesCount </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the number of unit denpendencies. </p>
<dl class="section return"><dt>Returns</dt><dd>denpendencies count. </dd></dl>

</div>
</div>
<a class="anchor" id="aafa03b2b0ca9fe418218ba089bdbb915"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::Dependency </td>
          <td>(</td>
          <td class="paramtype">const size_t&#160;</td>
          <td class="paramname"><em>Index</em>)</td><td></td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns dependency record with number <em>Index</em>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Index</td><td>number of a dependency.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>dependency record. </dd></dl>

</div>
</div>
<a class="anchor" id="a2d3b62dc0a1a7625f8ac3ae2a07422e8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::GetName </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the file name of the build unit. </p>
<dl class="section return"><dt>Returns</dt><dd>name of the build unit. </dd></dl>

</div>
</div>
<a class="anchor" id="a256d718b856decdeed2ef53593601a3e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::Hash </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns string hash for the file name. </p>

</div>
</div>
<a class="anchor" id="a9e1e363a381f344201b3f952e2e838fc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::Marker </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates that this unit was already walked through by a dependency unwinding process to avoid infinite loops. </p>
<dl class="section return"><dt>Returns</dt><dd>reference to <a class="el" href="../../dd/d0f/classCDependencyRecord.html#a0327e854ac8b0bc48eefe3155a84475e" title="Indicates that this unit was already walked through by a dependency unwinding process to avoid infini...">CDependencyRecord::m_Marker</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="ac2b4b51ad9a0e119076162c70106bf8b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::SetName </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="../../d7/da9/classCString.html">CString</a> &amp;&#160;</td>
          <td class="paramname"><em>Name</em>)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Changes the file name of the build unit. </p>

</div>
</div>
<a class="anchor" id="a7b79c94758324474032dfb940b61bc20"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::Show </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname">)</td><td></td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Prints the build unit dependecy record contents to the standard output. </p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="ab9ce653ee88189e3aaf964a8dc65b606"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::m_CrossReferences</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>List of units that depend on this unit. </p>

</div>
</div>
<a class="anchor" id="a831a0a5935519f39e1c100fd8a65224f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::m_CrossReferencesComplete</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates that the list of cross-references is fully gathered. </p>

</div>
</div>
<a class="anchor" id="a169a19e632aa59249d667ef45e2b2560"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::m_Dependencies</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>List of units that this unit depends on. </p>

</div>
</div>
<a class="anchor" id="af5ddb7b517658fd95a80c04d94f555dd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::m_DependenciesComplete</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates that the list of dependencies is fully gathered. </p>

</div>
</div>
<a class="anchor" id="a4431e94dbd98487fcd0e9852b7cffa57"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::m_Hash</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>String hash of the unit name <a class="el" href="../../dd/d0f/classCDependencyRecord.html#a1eb617707168568e4d2c503150354f09" title="File name of the build unit. ">CDependencyRecord::m_Name</a>. </p>

</div>
</div>
<a class="anchor" id="a0327e854ac8b0bc48eefe3155a84475e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::m_Marker</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Indicates that this unit was already walked through by a dependency unwinding process to avoid infinite loops. </p>

</div>
</div>
<a class="anchor" id="a1eb617707168568e4d2c503150354f09"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CDependencyRecord::m_Name</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>File name of the build unit. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/<a class="el" href="../../d8/d7f/depsearch_8h_source.html">depsearch.h</a></li>
<li>src/<a class="el" href="../../d4/d82/depsearch_8cpp.html">depsearch.cpp</a></li>
<li>src/doc/<a class="el" href="../../da/d24/depsearch_8dox.html">depsearch.dox</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jun 9 2013 10:56:00 for cbp2make by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.4
</small></address>
</body>
</html>
